/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Operation Records APIs
Anti DDoS Protection Package Operation Records APIs

OpenAPI spec version: v1
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/

#import <Foundation/Foundation.h>
#import <JDCloudOCSDKAntipro/AntiproApiModel.h>


@implementation AntiproDescribeCcsIpResourcesRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    return self;
} 

@end
@implementation AntiproDescribeCpsIpResourcesRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    return self;
} 

@end
@implementation AntiproDescribeElasticIpResourcesRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    return self;
} 

@end
@implementation AntiproDescribeAttackTypeCountRequest
-(id) initWithRegion:(NSString *)regionId
startTime:(NSString*)startTime
endTime:(NSString*)endTime
instanceId:(NSString*)instanceId
ip:(NSArray<NSString*>*)ip { 
    self.regionId = regionId;
    self.startTime = startTime;
    self.endTime = endTime;
    self.instanceId = instanceId;
    self.ip = ip;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
startTime:(NSString*)startTime
endTime:(NSString*)endTime
instanceId:(NSString*)instanceId
ip:(NSArray<NSString*>*)ip { 
    self.regionId = regionId;
    self.version = version;
    self.startTime = startTime;
    self.endTime = endTime;
    self.instanceId = instanceId;
    self.ip = ip;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    if([self ip])
    {
        [result setValue:[self ip] forKey:@"ip"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    self.ip = [dictionary objectForKey:@"ip"];
    return self;
} 

@end
@implementation AntiproDescribeAttackStatisticsRequest
-(id) initWithRegion:(NSString *)regionId
startTime:(NSString*)startTime
endTime:(NSString*)endTime
instanceId:(NSString*)instanceId
ip:(NSArray<NSString*>*)ip { 
    self.regionId = regionId;
    self.startTime = startTime;
    self.endTime = endTime;
    self.instanceId = instanceId;
    self.ip = ip;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
startTime:(NSString*)startTime
endTime:(NSString*)endTime
instanceId:(NSString*)instanceId
ip:(NSArray<NSString*>*)ip { 
    self.regionId = regionId;
    self.version = version;
    self.startTime = startTime;
    self.endTime = endTime;
    self.instanceId = instanceId;
    self.ip = ip;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    if([self ip])
    {
        [result setValue:[self ip] forKey:@"ip"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    self.ip = [dictionary objectForKey:@"ip"];
    return self;
} 

@end
@implementation AntiproDescribeAttackStatisticsResult
-(id) initWithAttackCount:(NSNumber*) attackCount
        blackHoleCount:(NSNumber*)blackHoleCount
        peak:(NSNumber*)peak
        unit:(NSString*)unit { 
    self.attackCount = attackCount;               
    self.blackHoleCount = blackHoleCount;               
    self.peak = peak;               
    self.unit = unit;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self attackCount])
    {
        [result setValue:[self attackCount] forKey:@"attackCount"];
    }
    if([self blackHoleCount])
    {
        [result setValue:[self blackHoleCount] forKey:@"blackHoleCount"];
    }
    if([self peak])
    {
        [result setValue:[self peak] forKey:@"peak"];
    }
    if([self unit])
    {
        [result setValue:[self unit] forKey:@"unit"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.attackCount = [dictionary objectForKey:@"attackCount"];
    self.blackHoleCount = [dictionary objectForKey:@"blackHoleCount"];
    self.peak = [dictionary objectForKey:@"peak"];
    self.unit = [dictionary objectForKey:@"unit"];
    return self;
} 

@end
@implementation AntiproDescribeAttackSourceResult
-(id) initWithData:(NSArray<NSString*>*) data { 
    self.data = data;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self data])
    {
        [result setValue:[self data] forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.data = [dictionary objectForKey:@"data"];
    return self;
} 

@end
@implementation AntiproDescribeIpMonitorFlowRequest
-(id) initWithRegion:(NSString *)regionId
startTime:(NSString*)startTime
endTime:(NSString*)endTime
ip:(NSArray<NSString*>*)ip { 
    self.regionId = regionId;
    self.startTime = startTime;
    self.endTime = endTime;
    self.ip = ip;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
startTime:(NSString*)startTime
endTime:(NSString*)endTime
ip:(NSArray<NSString*>*)ip { 
    self.regionId = regionId;
    self.version = version;
    self.startTime = startTime;
    self.endTime = endTime;
    self.ip = ip;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self ip])
    {
        [result setValue:[self ip] forKey:@"ip"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    self.ip = [dictionary objectForKey:@"ip"];
    return self;
} 

@end
@implementation AntiproDescribeAttackLogsRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
startTime:(NSString*)startTime
endTime:(NSString*)endTime
instanceId:(NSString*)instanceId
ip:(NSArray<NSString*>*)ip { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.startTime = startTime;
    self.endTime = endTime;
    self.instanceId = instanceId;
    self.ip = ip;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
startTime:(NSString*)startTime
endTime:(NSString*)endTime
instanceId:(NSString*)instanceId
ip:(NSArray<NSString*>*)ip { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.startTime = startTime;
    self.endTime = endTime;
    self.instanceId = instanceId;
    self.ip = ip;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    if([self ip])
    {
        [result setValue:[self ip] forKey:@"ip"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    self.ip = [dictionary objectForKey:@"ip"];
    return self;
} 

@end
@implementation AntiproDescribeAttackSourceRequest
-(id) initWithRegion:(NSString *)regionId
ip:(NSString*)ip
attackLogId:(NSString*)attackLogId { 
    self.regionId = regionId;
    self.ip = ip;
    self.attackLogId = attackLogId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
ip:(NSString*)ip
attackLogId:(NSString*)attackLogId { 
    self.regionId = regionId;
    self.version = version;
    self.ip = ip;
    self.attackLogId = attackLogId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self ip])
    {
        [result setValue:[self ip] forKey:@"ip"];
    }
    if([self attackLogId])
    {
        [result setValue:[self attackLogId] forKey:@"attackLogId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ip = [dictionary objectForKey:@"ip"];
    self.attackLogId = [dictionary objectForKey:@"attackLogId"];
    return self;
} 

@end
@implementation AntiproDescribeProtectionRuleRequest
-(id) initWithRegion:(NSString *)regionId
ip:(NSString*)ip
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.ip = ip;
    self.instanceId = instanceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
ip:(NSString*)ip
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.version = version;
    self.ip = ip;
    self.instanceId = instanceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self ip])
    {
        [result setValue:[self ip] forKey:@"ip"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.ip = [dictionary objectForKey:@"ip"];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
@implementation AntiproDescribeInstancesRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.name = name;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
name:(NSString*)name { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.name = name;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.name = [dictionary objectForKey:@"name"];
    return self;
} 

@end
@implementation AntiproAddProtectedIpResult
-(id) initWithCode:(NSNumber*) code
        message:(NSString*)message { 
    self.code = code;               
    self.message = message;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self code])
    {
        [result setValue:[self code] forKey:@"code"];
    }
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.code = [dictionary objectForKey:@"code"];
    self.message = [dictionary objectForKey:@"message"];
    return self;
} 

@end
@implementation AntiproModifyInstanceNameResult
-(id) initWithCode:(NSNumber*) code
        message:(NSString*)message { 
    self.code = code;               
    self.message = message;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self code])
    {
        [result setValue:[self code] forKey:@"code"];
    }
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.code = [dictionary objectForKey:@"code"];
    self.message = [dictionary objectForKey:@"message"];
    return self;
} 

@end
@implementation AntiproDescribeProtectedIpListRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
instanceId:(NSNumber*)instanceId
type:(NSNumber*)type
ip:(NSString*)ip { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.instanceId = instanceId;
    self.type = type;
    self.ip = ip;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
instanceId:(NSNumber*)instanceId
type:(NSNumber*)type
ip:(NSString*)ip { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.instanceId = instanceId;
    self.type = type;
    self.ip = ip;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    if([self type])
    {
        [result setValue:[self type] forKey:@"type"];
    }
    if([self ip])
    {
        [result setValue:[self ip] forKey:@"ip"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    self.type = [dictionary objectForKey:@"type"];
    self.ip = [dictionary objectForKey:@"ip"];
    return self;
} 

@end
@implementation AntiproDeleteProtectedIpResult
-(id) initWithCode:(NSNumber*) code
        message:(NSString*)message { 
    self.code = code;               
    self.message = message;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self code])
    {
        [result setValue:[self code] forKey:@"code"];
    }
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.code = [dictionary objectForKey:@"code"];
    self.message = [dictionary objectForKey:@"message"];
    return self;
} 

@end
@implementation AntiproCheckInstanceNameResult
-(id) initWithCode:(NSNumber*) code
        message:(NSString*)message { 
    self.code = code;               
    self.message = message;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self code])
    {
        [result setValue:[self code] forKey:@"code"];
    }
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.code = [dictionary objectForKey:@"code"];
    self.message = [dictionary objectForKey:@"message"];
    return self;
} 

@end
@implementation AntiproDescribeInstanceRequest
-(id) initWithRegion:(NSString *)regionId
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.instanceId = instanceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.version = version;
    self.instanceId = instanceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
@implementation AntiproModifyInstanceResult
-(id) initWithInstanceId:(NSString*) instanceId { 
    self.instanceId = instanceId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
@implementation AntiproModifyProtectionRuleResult
-(id) initWithCode:(NSNumber*) code
        message:(NSString*)message { 
    self.code = code;               
    self.message = message;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self code])
    {
        [result setValue:[self code] forKey:@"code"];
    }
    if([self message])
    {
        [result setValue:[self message] forKey:@"message"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.code = [dictionary objectForKey:@"code"];
    self.message = [dictionary objectForKey:@"message"];
    return self;
} 

@end
@implementation AntiproCreateInstanceResult
-(id) initWithInstanceId:(NSString*) instanceId { 
    self.instanceId = instanceId;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
@implementation AntiproCheckInstanceNameRequest
-(id) initWithRegion:(NSString *)regionId
instanceName:(NSString*)instanceName { 
    self.regionId = regionId;
    self.instanceName = instanceName;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
instanceName:(NSString*)instanceName { 
    self.regionId = regionId;
    self.version = version;
    self.instanceName = instanceName;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self instanceName])
    {
        [result setValue:[self instanceName] forKey:@"instanceName"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.instanceName = [dictionary objectForKey:@"instanceName"];
    return self;
} 

@end
@implementation AntiproDescribeOperationRecordsRequest
-(id) initWithRegion:(NSString *)regionId
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
startTime:(NSString*)startTime
endTime:(NSString*)endTime
action:(NSNumber*)action
name:(NSString*)name { 
    self.regionId = regionId;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.startTime = startTime;
    self.endTime = endTime;
    self.action = action;
    self.name = name;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
pageNumber:(NSNumber*)pageNumber
pageSize:(NSNumber*)pageSize
startTime:(NSString*)startTime
endTime:(NSString*)endTime
action:(NSNumber*)action
name:(NSString*)name { 
    self.regionId = regionId;
    self.version = version;
    self.pageNumber = pageNumber;
    self.pageSize = pageSize;
    self.startTime = startTime;
    self.endTime = endTime;
    self.action = action;
    self.name = name;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self pageNumber])
    {
        [result setValue:[self pageNumber] forKey:@"pageNumber"];
    }
    if([self pageSize])
    {
        [result setValue:[self pageSize] forKey:@"pageSize"];
    }
    if([self startTime])
    {
        [result setValue:[self startTime] forKey:@"startTime"];
    }
    if([self endTime])
    {
        [result setValue:[self endTime] forKey:@"endTime"];
    }
    if([self action])
    {
        [result setValue:[self action] forKey:@"action"];
    }
    if([self name])
    {
        [result setValue:[self name] forKey:@"name"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.pageNumber = [dictionary objectForKey:@"pageNumber"];
    self.pageSize = [dictionary objectForKey:@"pageSize"];
    self.startTime = [dictionary objectForKey:@"startTime"];
    self.endTime = [dictionary objectForKey:@"endTime"];
    self.action = [dictionary objectForKey:@"action"];
    self.name = [dictionary objectForKey:@"name"];
    return self;
} 

@end
@implementation AntiproDescribeCpsIpResourcesResult
-(id) initWithDataList:(NSArray<IpResource*>*) dataList
        currentCount:(NSNumber*)currentCount
        totalCount:(NSNumber*)totalCount
        totalPage:(NSNumber*)totalPage { 
    self.dataList = dataList;               
    self.currentCount = currentCount;               
    self.totalCount = totalCount;               
    self.totalPage = totalPage;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            IpResource* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    if([self currentCount])
    {
        [result setValue:[self currentCount] forKey:@"currentCount"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    if([self totalPage])
    {
        [result setValue:[self totalPage] forKey:@"totalPage"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        IpResource* item = [[IpResource alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    self.currentCount = [dictionary objectForKey:@"currentCount"];
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    self.totalPage = [dictionary objectForKey:@"totalPage"];
    return self;
} 

@end
  
@implementation AntiproDescribeCpsIpResourcesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeCpsIpResourcesResult* result = [[AntiproDescribeCpsIpResourcesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeCpsIpResourcesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeCcsIpResourcesResult
-(id) initWithDataList:(NSArray<IpResource*>*) dataList
        currentCount:(NSNumber*)currentCount
        totalCount:(NSNumber*)totalCount
        totalPage:(NSNumber*)totalPage { 
    self.dataList = dataList;               
    self.currentCount = currentCount;               
    self.totalCount = totalCount;               
    self.totalPage = totalPage;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            IpResource* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    if([self currentCount])
    {
        [result setValue:[self currentCount] forKey:@"currentCount"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    if([self totalPage])
    {
        [result setValue:[self totalPage] forKey:@"totalPage"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        IpResource* item = [[IpResource alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    self.currentCount = [dictionary objectForKey:@"currentCount"];
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    self.totalPage = [dictionary objectForKey:@"totalPage"];
    return self;
} 

@end
@implementation AntiproDescribeElasticIpResourcesResult
-(id) initWithDataList:(NSArray<IpResource*>*) dataList
        currentCount:(NSNumber*)currentCount
        totalCount:(NSNumber*)totalCount
        totalPage:(NSNumber*)totalPage { 
    self.dataList = dataList;               
    self.currentCount = currentCount;               
    self.totalCount = totalCount;               
    self.totalPage = totalPage;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            IpResource* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    if([self currentCount])
    {
        [result setValue:[self currentCount] forKey:@"currentCount"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    if([self totalPage])
    {
        [result setValue:[self totalPage] forKey:@"totalPage"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        IpResource* item = [[IpResource alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    self.currentCount = [dictionary objectForKey:@"currentCount"];
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    self.totalPage = [dictionary objectForKey:@"totalPage"];
    return self;
} 

@end
  
@implementation AntiproDescribeElasticIpResourcesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeElasticIpResourcesResult* result = [[AntiproDescribeElasticIpResourcesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeElasticIpResourcesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation AntiproDescribeCcsIpResourcesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeCcsIpResourcesResult* result = [[AntiproDescribeCcsIpResourcesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeCcsIpResourcesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeIpMonitorFlowResult
-(id) initWithBps:(IpResourceFlow*) bps
        pps:(IpResourceFlow*)pps { 
    self.bps = bps;               
    self.pps = pps;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self bps])
    {
        [result setValue:[[self bps] dictionary]forKey:@"bps"];
    }
    if([self pps])
    {
        [result setValue:[[self pps] dictionary]forKey:@"pps"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.bps = [[IpResourceFlow alloc]initWithDic:[dictionary objectForKey:@"bps"]];
    self.pps = [[IpResourceFlow alloc]initWithDic:[dictionary objectForKey:@"pps"]];
    return self;
} 

@end
  
@implementation AntiproDescribeIpMonitorFlowResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeIpMonitorFlowResult* result = [[AntiproDescribeIpMonitorFlowResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeIpMonitorFlowResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation AntiproDescribeAttackSourceResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeAttackSourceResult* result = [[AntiproDescribeAttackSourceResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeAttackSourceResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeAttackLogsResult
-(id) initWithDataList:(NSArray<AttackLog*>*) dataList
        currentCount:(NSNumber*)currentCount
        totalCount:(NSNumber*)totalCount
        totalPage:(NSNumber*)totalPage { 
    self.dataList = dataList;               
    self.currentCount = currentCount;               
    self.totalCount = totalCount;               
    self.totalPage = totalPage;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            AttackLog* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    if([self currentCount])
    {
        [result setValue:[self currentCount] forKey:@"currentCount"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    if([self totalPage])
    {
        [result setValue:[self totalPage] forKey:@"totalPage"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        AttackLog* item = [[AttackLog alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    self.currentCount = [dictionary objectForKey:@"currentCount"];
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    self.totalPage = [dictionary objectForKey:@"totalPage"];
    return self;
} 

@end
  
@implementation AntiproDescribeAttackStatisticsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeAttackStatisticsResult* result = [[AntiproDescribeAttackStatisticsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeAttackStatisticsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeAttackTypeCountResult
-(id) initWithDataList:(NSArray<AttackTypeCount*>*) dataList { 
    self.dataList = dataList;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            AttackTypeCount* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        AttackTypeCount* item = [[AttackTypeCount alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    return self;
} 

@end
  
@implementation AntiproDescribeAttackTypeCountResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeAttackTypeCountResult* result = [[AntiproDescribeAttackTypeCountResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeAttackTypeCountResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation AntiproDescribeAttackLogsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeAttackLogsResult* result = [[AntiproDescribeAttackLogsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeAttackLogsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeProtectedIpListResult
-(id) initWithDataList:(NSArray<ProtectedIp*>*) dataList
        currentCount:(NSNumber*)currentCount
        totalCount:(NSNumber*)totalCount
        totalPage:(NSNumber*)totalPage { 
    self.dataList = dataList;               
    self.currentCount = currentCount;               
    self.totalCount = totalCount;               
    self.totalPage = totalPage;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            ProtectedIp* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    if([self currentCount])
    {
        [result setValue:[self currentCount] forKey:@"currentCount"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    if([self totalPage])
    {
        [result setValue:[self totalPage] forKey:@"totalPage"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        ProtectedIp* item = [[ProtectedIp alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    self.currentCount = [dictionary objectForKey:@"currentCount"];
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    self.totalPage = [dictionary objectForKey:@"totalPage"];
    return self;
} 

@end
  
@implementation AntiproDescribeProtectedIpListResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeProtectedIpListResult* result = [[AntiproDescribeProtectedIpListResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeProtectedIpListResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeProtectionOutlineRequest
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
@implementation AntiproModifyProtectionRuleRequest
-(id) initWithRegion:(NSString *)regionId
protectionRuleSpec:(ProtectionRuleSpec*)protectionRuleSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.protectionRuleSpec = protectionRuleSpec;
    self.instanceId = instanceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
protectionRuleSpec:(ProtectionRuleSpec*)protectionRuleSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.version = version;
    self.protectionRuleSpec = protectionRuleSpec;
    self.instanceId = instanceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self protectionRuleSpec])
    {
        [result setValue:[[self protectionRuleSpec] dictionary]forKey:@"protectionRuleSpec"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.protectionRuleSpec = [[ProtectionRuleSpec alloc]initWithDic:[dictionary objectForKey:@"protectionRuleSpec"]];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
  
@implementation AntiproModifyInstanceResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproModifyInstanceResult* result = [[AntiproModifyInstanceResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproModifyInstanceResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeProtectionRuleResult
-(id) initWithData:(ProtectionRule*) data { 
    self.data = data;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self data])
    {
        [result setValue:[[self data] dictionary]forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.data = [[ProtectionRule alloc]initWithDic:[dictionary objectForKey:@"data"]];
    return self;
} 

@end
@implementation AntiproDescribeInstanceResult
-(id) initWithData:(Instance*) data { 
    self.data = data;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self data])
    {
        [result setValue:[[self data] dictionary]forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.data = [[Instance alloc]initWithDic:[dictionary objectForKey:@"data"]];
    return self;
} 

@end
  
@implementation AntiproDescribeInstanceResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeInstanceResult* result = [[AntiproDescribeInstanceResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeInstanceResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeInstancesResult
-(id) initWithDataList:(NSArray<Instance*>*) dataList
        currentCount:(NSNumber*)currentCount
        totalCount:(NSNumber*)totalCount
        totalPage:(NSNumber*)totalPage { 
    self.dataList = dataList;               
    self.currentCount = currentCount;               
    self.totalCount = totalCount;               
    self.totalPage = totalPage;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            Instance* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    if([self currentCount])
    {
        [result setValue:[self currentCount] forKey:@"currentCount"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    if([self totalPage])
    {
        [result setValue:[self totalPage] forKey:@"totalPage"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        Instance* item = [[Instance alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    self.currentCount = [dictionary objectForKey:@"currentCount"];
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    self.totalPage = [dictionary objectForKey:@"totalPage"];
    return self;
} 

@end
  
@implementation AntiproDescribeInstancesResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeInstancesResult* result = [[AntiproDescribeInstancesResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeInstancesResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproModifyInstanceRequest
-(id) initWithRegion:(NSString *)regionId
modifyInstanceSpec:(ModifyInstanceSpec*)modifyInstanceSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.modifyInstanceSpec = modifyInstanceSpec;
    self.instanceId = instanceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
modifyInstanceSpec:(ModifyInstanceSpec*)modifyInstanceSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.version = version;
    self.modifyInstanceSpec = modifyInstanceSpec;
    self.instanceId = instanceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self modifyInstanceSpec])
    {
        [result setValue:[[self modifyInstanceSpec] dictionary]forKey:@"modifyInstanceSpec"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.modifyInstanceSpec = [[ModifyInstanceSpec alloc]initWithDic:[dictionary objectForKey:@"modifyInstanceSpec"]];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
@implementation AntiproAddProtectedIpRequest
-(id) initWithRegion:(NSString *)regionId
protectedIpSpec:(ProtectedIpSpec*)protectedIpSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.protectedIpSpec = protectedIpSpec;
    self.instanceId = instanceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
protectedIpSpec:(ProtectedIpSpec*)protectedIpSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.version = version;
    self.protectedIpSpec = protectedIpSpec;
    self.instanceId = instanceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self protectedIpSpec])
    {
        [result setValue:[[self protectedIpSpec] dictionary]forKey:@"protectedIpSpec"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.protectedIpSpec = [[ProtectedIpSpec alloc]initWithDic:[dictionary objectForKey:@"protectedIpSpec"]];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
@implementation AntiproDescribeProtectionOutlineResult
-(id) initWithData:(ProtectionOutline*) data { 
    self.data = data;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self data])
    {
        [result setValue:[[self data] dictionary]forKey:@"data"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.data = [[ProtectionOutline alloc]initWithDic:[dictionary objectForKey:@"data"]];
    return self;
} 

@end
@implementation AntiproCreateInstanceRequest
-(id) initWithRegion:(NSString *)regionId
createInstanceSpec:(CreateInstanceSpec*)createInstanceSpec { 
    self.regionId = regionId;
    self.createInstanceSpec = createInstanceSpec;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
createInstanceSpec:(CreateInstanceSpec*)createInstanceSpec { 
    self.regionId = regionId;
    self.version = version;
    self.createInstanceSpec = createInstanceSpec;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self createInstanceSpec])
    {
        [result setValue:[[self createInstanceSpec] dictionary]forKey:@"createInstanceSpec"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.createInstanceSpec = [[CreateInstanceSpec alloc]initWithDic:[dictionary objectForKey:@"createInstanceSpec"]];
    return self;
} 

@end
  
@implementation AntiproAddProtectedIpResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproAddProtectedIpResult* result = [[AntiproAddProtectedIpResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproAddProtectedIpResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeGeoAreasResult
-(id) initWithDataList:(NSArray<Country*>*) dataList { 
    self.dataList = dataList;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            Country* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        Country* item = [[Country alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    return self;
} 

@end
  
@implementation AntiproCheckInstanceNameResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproCheckInstanceNameResult* result = [[AntiproCheckInstanceNameResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproCheckInstanceNameResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDeleteProtectedIpRequest
-(id) initWithRegion:(NSString *)regionId
protectedIpSpec:(ProtectedIpSpec*)protectedIpSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.protectedIpSpec = protectedIpSpec;
    self.instanceId = instanceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
protectedIpSpec:(ProtectedIpSpec*)protectedIpSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.version = version;
    self.protectedIpSpec = protectedIpSpec;
    self.instanceId = instanceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self protectedIpSpec])
    {
        [result setValue:[[self protectedIpSpec] dictionary]forKey:@"protectedIpSpec"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.protectedIpSpec = [[ProtectedIpSpec alloc]initWithDic:[dictionary objectForKey:@"protectedIpSpec"]];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
@implementation AntiproModifyInstanceNameRequest
-(id) initWithRegion:(NSString *)regionId
modifyInstanceNameSpec:(ModifyInstanceNameSpec*)modifyInstanceNameSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.modifyInstanceNameSpec = modifyInstanceNameSpec;
    self.instanceId = instanceId;
    return self;
}

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
modifyInstanceNameSpec:(ModifyInstanceNameSpec*)modifyInstanceNameSpec
instanceId:(NSString*)instanceId { 
    self.regionId = regionId;
    self.version = version;
    self.modifyInstanceNameSpec = modifyInstanceNameSpec;
    self.instanceId = instanceId;
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    if([self modifyInstanceNameSpec])
    {
        [result setValue:[[self modifyInstanceNameSpec] dictionary]forKey:@"modifyInstanceNameSpec"];
    }
    if([self instanceId])
    {
        [result setValue:[self instanceId] forKey:@"instanceId"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    self.modifyInstanceNameSpec = [[ModifyInstanceNameSpec alloc]initWithDic:[dictionary objectForKey:@"modifyInstanceNameSpec"]];
    self.instanceId = [dictionary objectForKey:@"instanceId"];
    return self;
} 

@end
  
@implementation AntiproDescribeProtectionOutlineResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeProtectionOutlineResult* result = [[AntiproDescribeProtectionOutlineResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeProtectionOutlineResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation AntiproModifyProtectionRuleResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproModifyProtectionRuleResult* result = [[AntiproModifyProtectionRuleResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproModifyProtectionRuleResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation AntiproModifyInstanceNameResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproModifyInstanceNameResult* result = [[AntiproModifyInstanceNameResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproModifyInstanceNameResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeGeoAreasRequest
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    NSMutableDictionary *superObjectDic = [super dictionary];
    if(superObjectDic && [superObjectDic count]>0)
    {
        [result addEntriesFromDictionary:superObjectDic];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    return self;
} 

@end
  
@implementation AntiproDeleteProtectedIpResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDeleteProtectedIpResult* result = [[AntiproDeleteProtectedIpResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDeleteProtectedIpResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation AntiproDescribeGeoAreasResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeGeoAreasResult* result = [[AntiproDescribeGeoAreasResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeGeoAreasResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation AntiproDescribeProtectionRuleResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeProtectionRuleResult* result = [[AntiproDescribeProtectionRuleResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeProtectionRuleResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
  
@implementation AntiproCreateInstanceResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproCreateInstanceResult* result = [[AntiproCreateInstanceResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproCreateInstanceResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
@implementation AntiproDescribeOperationRecordsResult
-(id) initWithDataList:(NSArray<OperationRecord*>*) dataList
        currentCount:(NSNumber*)currentCount
        totalCount:(NSNumber*)totalCount
        totalPage:(NSNumber*)totalPage { 
    self.dataList = dataList;               
    self.currentCount = currentCount;               
    self.totalCount = totalCount;               
    self.totalPage = totalPage;               
    return self;
}
-(NSMutableDictionary*) dictionary{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init];
    if([self dataList])
    {
            NSMutableArray<NSDictionary*>* arrayDic  = [[NSMutableArray alloc] init];
            for (int i =0 ; i< [[self dataList] count]; i++) {
            OperationRecord* item = [[self dataList] objectAtIndex:i];
            [arrayDic addObject:[item dictionary]];
        }
        [result setValue:arrayDic forKey:@"dataList"];
    }
    if([self currentCount])
    {
        [result setValue:[self currentCount] forKey:@"currentCount"];
    }
    if([self totalCount])
    {
        [result setValue:[self totalCount] forKey:@"totalCount"];
    }
    if([self totalPage])
    {
        [result setValue:[self totalPage] forKey:@"totalPage"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary{
    NSArray* dataListArray = [dictionary objectForKey:@"dataList"];
    if(dataListArray&&![dataListArray isKindOfClass:[NSNull class]])
    {
        NSMutableArray* propertyArray = [[NSMutableArray alloc]init];
        for(int i = 0 ; i< [dataListArray count];i++)
        {
        OperationRecord* item = [[OperationRecord alloc]initWithDic:[dataListArray objectAtIndex:i]];
            if(item)
            {
            [propertyArray addObject:item];
            }
        }
        self.dataList = propertyArray;
    }
    self.currentCount = [dictionary objectForKey:@"currentCount"];
    self.totalCount = [dictionary objectForKey:@"totalCount"];
    self.totalPage = [dictionary objectForKey:@"totalPage"];
    return self;
} 

@end
  
@implementation AntiproDescribeOperationRecordsResponse
-(NSMutableDictionary*) dictionary
{
    NSMutableDictionary* result = [[NSMutableDictionary alloc] init]; 
    if([self requestId])
    {
        [result setValue:[self requestId] forKey:@"requestId"];
    } 
    if([self result])
    {
        
        [result setValue:[[self result] dictionary] forKey:@"result"];
    }
    if([self error])
    {
        
        [result setValue:[[self error] dictionary] forKey:@"error"];
    }
    return result;
}

-(id) initWithDic:(NSDictionary*)dictionary
{
    
    self.requestId = [dictionary objectForKey:@"requestId"];
AntiproDescribeOperationRecordsResult* result = [[AntiproDescribeOperationRecordsResult alloc]initWithDic:[dictionary objectForKey:@"result"]];
    self.result = result;
    ServiceError* error = [[ServiceError alloc]initWithDic:[dictionary objectForKey:@"error"]];
    self.error = error;
    return self;
}

-(id) initWithRequestId:(NSString*) requestId
                  error:(ServiceError*) error
                 result:(AntiproDescribeOperationRecordsResult*) result
{
    self.error = error;
    self.result =result;
    self.requestId = requestId;
    return self;
}

@end
 
